package com.moxi.mogublog.commons.vo.college;

import com.moxi.cloudblog.base.validator.annotion.IntegerNotNull;
import com.moxi.cloudblog.base.validator.annotion.NotBlank;
import com.moxi.cloudblog.base.validator.group.Insert;
import com.moxi.cloudblog.base.validator.group.Update;
import com.moxi.cloudblog.base.vo.BaseVO;
import lombok.Data;

@Data
public class CollegeVo extends BaseVO <CollegeVo>{

    /**
     * 博客标题
     */
    @NotBlank(groups = {Insert.class, Update.class})
    private String title;

    /**
     * 博客简介
     * updateStrategy = FieldStrategy.IGNORED ：表示更新时候忽略非空判断
     */
    @NotBlank(groups = {Insert.class, Update.class})
    private String summary;

    /**
     * 博客内容
     */
    private String content;

    /**
     * 大学分类ID
     */
    private String collegeSortUid;


    /**
     * 是否发布
     */
    @NotBlank(groups = {Insert.class, Update.class})
    private String isPublish;


    /**
     * 排序字段，数值越大，越靠前
     */
    private Integer sort;

    /**
     * 如果原创，作者为管理员名
     */
    @NotBlank(groups = {Update.class})
    private String author;

    /**
     * 文章出处
     */
    private String articlesPart;

    /**
     * 推荐级别，用于首页推荐
     * 0：正常
     * 1：一级推荐(轮播图)
     * 2：二级推荐(top)
     * 3：三级推荐 ()
     * 4：四级 推荐 (特别推荐)
     */
    @IntegerNotNull(groups = {Insert.class, Update.class})
    private Integer level;

    /**
     * 使用Sort字段进行排序 （0：不使用， 1：使用），默认为0
     */
    private Integer useSort;

    /**
     * 是否开启评论(0:否， 1:是)
     */
    private String openComment;





    /**
     * 无参构造方法，初始化默认值
     */
    public CollegeVo() {
        this.level = 0;
        this.useSort = 0;
    }

}
